/**
 * @Project : AlgorithmLearning
 * @Author : Ruoyu Wang
 * @User : Momenta
 * @DateTime : 2024/3/13 19:27
 */

//游游拿到了一棵树，她每次操作可以选择两个相邻的节点使得它们同时加 1。
//游游想知道能否用有限的操作次数使得所有节点的奇偶性相同？如果存在合法解，请你给出任意一个。
//共有q次询问。
//
//输入描述
//  第一行输入一个整数q，代表询问次数。
//  对于每次询问，首先第一行输入一个正整数n，代表树的节点数量；
//  第二行输入n个正整数a_i，代表每个节点的初始权值；
//  接下来的n-1行，每行输入两个正整数u,v，代表节点u和节点v有一条边连接。
//  1<=n<=10^5
//  1<=a_i<=10^9
//  1<=u,v<=n
//  保证q次询问的所有节点数量之和不大于 200000。
//输出描述
//  对于每组询问，首先输出一行字符串"Yes"或者"No"代表能否达成目的。
//  如果可以达成目的，请首先输入一个正整数p，代表操作的次数。
//  接下来的p行，每行输入两个正整数x,y，代表同时使得a_x和a_y加 1。请务必保证x和y节点是有一条边连接的。
//  你不需要最小化操作次数，但需要保证操作次数不超过n。可以证明，如果有解，则一定存在一个方案满足操作总次数不超过n。
//
//示例 1
//输入
//2
//4
//1 2 2 3
//1 2
//2 3
//3 4
//4
//1 2 3 3
//1 2
//2 3
//2 4
//输出
//Yes
//3
//1 2
//2 3
//3 4
//No
//说明
//  第一组询问，我们进行如下操作：
//  1：节点 1 和节点 2 权值加 1，此时四个点权值为[2,3,2,3]
//  2：节点 2 和节点 3 权值加 1，此时四个点权值为[2,4,3,3]
//  3：节点 3 和节点 4 权值加 1，此时四个点权值为[2,4,4,4]
//  此时所有节点权值的奇偶性相同，符合要求（这种操作方案并不是唯一的）。
//  第二组询问，可以证明，无法用不超过n次操作使得所有节点权值的奇偶性相同。

#include <iostream>
using namespace std;

int main() {
    int q;
    scanf("%d",&q);
    while(q--){
        printf("No\n");
    }
}